"""特殊参数
默认情况下，参数可以按位置或显式关键字传递给 Python 函数。

/ 和 * 可以限制传参方式

函数定义中未使用 / 和 * 时，参数可以按位置或关键字传递给函数。
参数 / 之前的所有参数只能使用位置参数传参
参数 * 之后的所有参数只能使用关键字参数传参
"""

# def f(pos1, pos2, /, pos_or_kwd, *, kwd1, kwd2):
#       -----------    ----------     ----------
#         |             |                  |
#         |        位置或关键字   |
#         |                                - 仅限关键字
#          -- 仅限位置


"""
使用仅限位置形参，可以让用户无法使用形参名。形参名没有实际意义时，强制调用函数的实参顺序时，或同时接收位置形参和关键字时，这种方式很有用。

当形参名有实际意义，且显式名称可以让函数定义更易理解时，阻止用户依赖传递实参的位置时，才使用关键字。

对于 API，使用仅限位置形参，可以防止未来修改形参名时造成破坏性的 API 变动。
"""